home *** CD-ROM | disk | FTP | other *** search
/ Just Call Me Internet / Just Call Me Internet.iso / prog / atari / m2 / cat3src / magic / d / mtstream.d < prev    next >
Text File  |  1997-10-26  |  3KB  |  74 lines

  1. (*----------------------------------------------------------------------*
  2.  *                                                                      *
  3.  *  MAGICTOOLS   Modula's  All purpose  GEM  Interface  Cadre  Toolbox  *
  4.  *               ÿ         ÿ            ÿ    ÿ          ÿ               *
  5.  *----------------------------------------------------------------------*
  6.  * Version 3.30  02.02.1992     (C)90/91/92 by Peter Hellinger Software *
  7.  *----------------------------------------------------------------------*
  8.  *            Dieses Modul ist urheberrechtlich geschtzt.              *
  9.  *                                                                      *
  10.  * Die Ver”ffentlichung des Quelltextes oder Teilen daraus, sowie die   *
  11.  * Verbreitung des bersetzten, nicht gelinkten Codes in schriftlicher, *
  12.  * oder maschinenlesbarer Form, insbesondere in Zeitschriften, Mail-    *
  13.  * boxen oder anderen Medien bedarf der ausdrcklichen schriftlichen    *
  14.  * Einverst„ndnisserkl„rung des Autors.                                 *
  15.  *                                                                      *
  16.  * Die Verbreitung des Moduls als Teil eines gelinkten Programms ist    *
  17.  * fr Lizenznehmer ausdrcklich erlaubt!  Der Autor beh„lt sich das    *
  18.  * Recht vor, diese Erlaubnis jederzeit und ohne Angaben von Grnden zu *
  19.  * widerrufen.                                                          *
  20.  *----------------------------------------------------------------------*)
  21.  
  22. DEFINITION MODULE mtStreams;
  23.  
  24. FROM MagicSys   IMPORT  Nil, Null, Bit0, Bit1, Bit2, Bit3, Bit4, Bit5, Bit6,
  25.                         Bit7, Bit8, Bit9, Bit10, Bit11, Bit12, Bit13, Bit14,
  26.                         Bit15, LOC, Byte, ByteSet, sWORD, sINTEGER, sCARDINAL,
  27.                         sBITSET, lINTEGER, lCARDINAL, lWORD, lBITSET;
  28.  
  29.  
  30.  
  31.  
  32.  
  33. TYPE    StreamMode = (READ, READWRITE);
  34.  
  35. TYPE    STREAM;
  36.  
  37. PROCEDURE OpenStream (VAR s: STREAM; name: ARRAY OF CHAR;
  38.                       kind: StreamMode): INTEGER;
  39. (* ™ffnet eine Datei, die Dateinamen 'CON:', 'PRN:' und 'AUX:' ”ffnen 
  40.  * eine Datei auf das zugeh”rige Standardhandle.
  41.  *)
  42.  
  43. PROCEDURE CloseStream (VAR s: STREAM): INTEGER;
  44. (* Schliesst einen Stream *)
  45.  
  46. PROCEDURE WriteStream (s: STREAM; VAR a: ARRAY OF LOC);
  47. (* Schreibt eine Anzahl Bytes (HIGH (a)); in den Stream *)
  48.  
  49. PROCEDURE ReadStream (s: STREAM; VAR a: ARRAY OF LOC);
  50. (* Liest eine Anzahl Bytes (HIGH (a)) aus dem Stream *)
  51.  
  52. PROCEDURE Streampos (s: STREAM): lINTEGER;
  53. (* liefert den Dateizeiger des Streams *)
  54.  
  55. TYPE    Posmode = (Start, Relative, End);
  56.  
  57. PROCEDURE SetStreampos (s: STREAM; mode: Posmode; pos: lINTEGER);
  58. (* Setzt den Dateizeiger des Streams relativ vom Anfang (pos in Bytes) *)
  59.  
  60. PROCEDURE StreamEnd (s: STREAM); 
  61. (* Setzt den Dateizeiger auf das Dateiende (wichtig fr Append-Modus!) *)
  62.  
  63. PROCEDURE EndofStream (s: STREAM): BOOLEAN;
  64. (* TRUE, wenn das Ende der (zu lesenden) Datei ereicht ist *)
  65.  
  66. PROCEDURE StreamName (s: STREAM; VAR name: ARRAY OF CHAR);
  67. (* liefert den Namen des Streams *)
  68.  
  69. PROCEDURE StreamHandle (s: STREAM; VAR handle: sINTEGER);
  70. (* liefert das GEMDOS-Handle des Streams *)
  71.  
  72. END mtStreams.
  73.  
  74.